package com.ssy.jt808.gateway.sdk.terminal.constant.location.addition;

import java.util.Map;
import java.util.TreeMap;

/**
 * @author wangzezhou
 */
public enum DsmAlarmEnum{

  /** 疲劳驾驶报警 */
  FatigueDriving(0x01),

  /** 接打手持电话报警 */
  MakePhoneCall(0x02),

  /** 抽烟 */
  Smoking(0x03),

  /** 分神驾驶报警|不目视前方报警(粤标) */
  Distraction(0x04),

  /** 未检测到驾驶员 */
  DriverNotDetected(0x05),

  /** 双手同时脱离方向盘 */
  TakeOffWheel(0x06),

  /** 驾驶员行为监测功能失效 */
  DsmFailure(0x07),

  /** 驾驶辅助功能失效报警 */
  AdasFailure(0x08),

  /** 主动抓拍事件 */
  CaptureProactively(0x10),

  /** 道路标志识别事件 */
  DriverChanged(0x11);

  DsmAlarmEnum( int type ){
    this.type = type;
  }

  private final int type;

  public int type(){
    return type;
  }


  private static final Map<Integer,DsmAlarmEnum> TYPE_MAP;

  static{
    TYPE_MAP = new TreeMap<>();
    DsmAlarmEnum[] values = DsmAlarmEnum.values();
    for(DsmAlarmEnum value : values){
      TYPE_MAP.put(value.type(), value);
    }
  }

  public static DsmAlarmEnum type( int type ){
    DsmAlarmEnum DsmAlarmEnum = TYPE_MAP.get(type);
    assert DsmAlarmEnum != null;
    return DsmAlarmEnum;
  }
}
